技術問答
技術文章
iT 徵才
Tag
聊天室
2025 鐵人賽
登入/註冊
問答
文章
Tag
邦友
鐵人賽
搜尋
2023 iThome 鐵人賽
DAY
16
0
Software Development
FooTinder App - 美食餐廳 x 推薦地圖
系列 第
16
篇
Day 16, [軟體開發] 重構,Refactor
15th鐵人賽
Jian-Min (Vincent) Huang
2023-10-01 14:26:42
378 瀏覽
分享至
重構 aka 拆家
我們先來對焦 context 一下,重構跟拆家基本上是一體兩面
沒有測試保護的重構不叫做重構,就做拆家
It's dirty, but it works!
這句話不是要跟我們說所以就不要動,而是說明一件事
如果沒寫測試但已經跑在正式環境運行正常,那代表現在就是在正式環境上測試
直接貿然重構等於是在把一塊一塊磚頭敲下來,讓正式環境的用戶幫你測試,是不是很像拆家
所以如果完全沒有測試保護,那就要先補測試,細的依賴較少用單元測試,粗的依賴較多用整合測試
重構也是一樣,小增量、多迭代、快回饋
寫測試 -> 重構 -> 修正 -> 反覆迭代 -> 上正式環境得到回饋
FooTinder 重構過嗎?
後端前前後後應該大重構了三四次
但是因為保證了與前端 HTTP 的協定,加上有整合測試保護
不能說沒出錯,不過都能很快的修正,沒釀出更大的錯誤
✌️ 那麼第十六天到這邊囉,明天來講 -> 運營中的用戶活躍
相關資訊
$_purefunc 純函式公司
FooTinder App站
FooTinder 官網
FooTinder App 下載連結
留言
追蹤
檢舉
上一篇
Day 15, [產品開發] 商業報表與監測
下一篇
Day 17, [產品開發] 運營中的用戶活躍
系列文
FooTinder App - 美食餐廳 x 推薦地圖
共
30
篇
目錄
RSS系列文
訂閱系列文
16
人訂閱
26
Day 26, [產品開發] 運營之收入與推薦
27
Day 27, [軟體開發] 上雲下地入K8 (11/26)
28
Day 28, [產品開發] 定義成功 (11/26)
29
Day 29, [軟體開發] 運維成本 (11/26)
30
Day 30, 總結 (11/26)
完整目錄
熱門推薦
{{ item.subject }}
{{ item.channelVendor }}
|
{{ item.webinarstarted }}
|
{{ formatDate(item.duration) }}
直播中
立即報名
尚未有邦友留言
立即登入留言
iThome鐵人賽
參賽組數
403
組
團體組數
13
組
累計文章數
2897
篇
最後報名日
9/15
看影片追技術
看更多
{{ item.subject }}
{{ item.channelVendor }}
|
{{ formatDate(item.duration) }}
直播中
熱門tag
看更多
15th鐵人賽
16th鐵人賽
13th鐵人賽
14th鐵人賽
12th鐵人賽
11th鐵人賽
鐵人賽
2019鐵人賽
javascript
2018鐵人賽
python
2017鐵人賽
17th鐵人賽
windows
php
c#
windows server
linux
css
react
熱門問題
不知道網路紅隊的要去那加公司
更換FW後Public IP service無法使用
鼎新ERP欄位可修改預設值嗎
Ansible 連線主機的 port 不是 22 遇到的問題
備份映像檔
Outlook 寄件備份消失問題 (已解決)
請問有人遇過在lightsail上部屬fastapi失敗的案例?
aws ec2 檢查故障問題
IIS 管理員 連線功能不見
熱門回答
鼎新ERP欄位可修改預設值嗎
不知道網路紅隊的要去那加公司
Ansible 連線主機的 port 不是 22 遇到的問題
更換FW後Public IP service無法使用
備份映像檔
熱門文章
什麼是 Signal ?
第10天,No-Code 快速上線又省錢 / 原汁排骨湯 台北最好喝的排骨湯(台北萬華)| 30天滷肉飯
序: AI 加速編碼後,你該學什麼?
第11天,LibreOffice 更省錢 / 司機俱樂部 宵夜好選擇(台北松山)| 30天滷肉飯
第12天,即時通訊軟體選擇 / 金峰滷肉飯 台北名店(台北中正)| 30天滷肉飯
IT邦幫忙
×
標記使用者
輸入對方的帳號或暱稱
Loading
找不到結果。
標記
{{ result.label }}
{{ result.account }}